

#define USING_TINYXML2
#ifdef USING_TINYXML2

#ifndef HELPERS4XML_H_
#define HELPERS4XML_H_

#include <string>
#include <vector>
#include <memory>

using std::vector;
using std::string;

enum { BUF_SIZE = 256 };

vector<string>& SplitString2Vector(vector<string>& result, const char* source, const char* delimiters = " ,;");
vector<double>& SplitString2Vector(vector<double>& result, const char* source, const char* delimiters = " ,;");
vector<float>& SplitString2Vector(vector<float>& result, const char* source, const char* delimiters = " ,;");
vector<int>& SplitString2Vector(vector<int>& result, const char* source, const char* delimiters = " ,;");

vector<string>& SplitString2Vector(vector<string>& result, const string& source, const char* delimiters = " ,;");
vector<double>& SplitString2Vector(vector<double>& result, const string& source, const char* delimiters = " ,;");
vector<float>& SplitString2Vector(vector<float>& result, const string& source, const char* delimiters = " ,;");
vector<int>& SplitString2Vector(vector<int>& result, const string& source, const char* delimiters = " ,;");

string& Vector2String(string& result, const vector<string>& source, const char* jointer = "; ", const vector<string>& prefix = vector<string>());
string& Vector2String(string& result, const vector<double>& source, const char* jointer = "; ", const vector<string>& prefix = vector<string>());
string& Vector2String(string& result, const vector<float>& source, const char* jointer = "; ", const vector<string>& prefix = vector<string>());
string& Vector2String(string& result, const vector<int>& source, const char* jointer = "; ", const vector<string>& prefix = vector<string>());

void helpTest();

#endif // HELPERS4XML_H_

#endif